
public enum Direction {
	
	North(-1, 0), 
	East(0, 1), 
	South(1, 0), 
	West(0, -1);

	private final int _rowOffset;
	private final int _columnOffset;

	private Direction(int rowOffset, int columnOffset) {
		_rowOffset = rowOffset;
		_columnOffset = columnOffset;
	}

	public Point translate(final Point location) {
		final int row = location.getRow();
		final int column = location.getCol();
		return new Point(row + _rowOffset, column + _columnOffset);
	}
}
